package com.cyy.springbootinit.model.vo;

import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.cyy.springbootinit.model.entity.BalanceWarning;
import lombok.Data;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 余额预警表视图
 *
 * @author 程序员cyy</a>
 * @from cyy</a>
 */
@Data
public class BalanceWarningVO implements Serializable {

    /**
     * 自增整数，主键，余额预警记录ID
     */
    @TableId(type = IdType.AUTO)
    private Integer warningId;


    /**
     * 浮点数，预警阈值（如余额低于该值时触发预警）
     */
    private Double thresholdValue;

    /**
     * 字符串，余额预警类型（如“水费”、“电费”、“水电费”等，明确是哪种费用的余额预警）
     */
    private String warningType;


    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;



    /**
     * 封装类转对象
     *
     * @param scoringResultVO
     * @return
     */
    public static BalanceWarning voToObj(BalanceWarningVO scoringResultVO) {
        if (scoringResultVO == null) {
            return null;
        }
        BalanceWarning scoringResult = new BalanceWarning();
        BeanUtils.copyProperties(scoringResultVO, scoringResult);
        return scoringResult;
    }

    /**
     * 对象转封装类
     *
     * @param
     * @return
     */
    public static BalanceWarningVO objToVo(BalanceWarning balanceWarning) {
        if (balanceWarning == null) {
            return null;
        }
        BalanceWarningVO scoringResultVO = new BalanceWarningVO();
        BeanUtils.copyProperties(balanceWarning, scoringResultVO);
        //scoringResultVO.setResultProp(JSONUtil.toList(scoringResult.getResultProp(), String.class));
        return scoringResultVO;
    }
    private static final long serialVersionUID = 1L;
}
